An error-correcting code (ECC) decoder has limited error-correcting capability. While the probability of an ECC decoder failing to decode the user data in a receiver system is typically low, it is non-zero. ECC failures may occur under different circumstances: for example, an ECC decoder may fail to decode a data sector due to media defects, servo errors, sub-optimal timing recovery, or sub-optimal equalization. Recovery procedures can be invoked after the ECC decoder returns an uncorrectable status such that the system can be re-trained to properly decode the user data. Therefore, improved techniques for error recovery of a system including an ECC decoder are desirable.